<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <title></title>
  </head>

  <body>
    <script type="text/javascript">
      //1.JS是什么
      js是一种功能强大的网页脚本语言,主要用于开发交互式的网站页面;

      //2.JS的数据类型有哪几种，哪些是简单类型变量，哪些是复杂类型变量，它们有什么区别
     //( 数值型、字符串型、布尔型、特殊数据类型（undefined、null）。);简单类型：数值型、字符串型、布尔型、特殊数据类型、对象型  
     //复杂类型：函数型、数组型。  区别：简单类型叫值类型，复杂类型叫引用类型。

      //3.用代码来表示具体如何定义JS的各种类型变量
        //var num=123;
        // var num1=070;
        // var num2=3.1415926;
        // var num3=-10;
        // var num4=123e5;
        // var num=123e-5;
        // var x=9999999999999;
        // console.log(x);
        // var y=(0.1 * 10 + 0.2 * 10) / 10
        // console.log(y);

      //4.undefined和Null的区别
      //undefined未定义值，用于声明的变量还未被初始化时，变量的默认值为undefined，undefined表示没有为变量设置值，而NULL则表示变量不存在或无效
      //null表示一个变量被赋予了一个空值，而undefined则表示该变量尚未被赋值。

      //5.script标签写在页面头部和底部，有何区别
      //写在头部代码会在页面加载完成之前就被优先载入，如果出错则无法显示页面元素。
      //写在底部页面元素正常显示 js代码出错不会影响到页面元素
      js立即交互优先的顶部
      延迟交互性稍后的尾部
      //6.如何保证在页面基本结构和样式加载后，再执行我们的JS脚本
      //由于HTML页面的加载顺序是从上到下，所以js代码要写在页面靠下的位置，否则可能会发生元素获取不到的问题，为了避免这种情况，可以通过页面元素加载完之后，再执行js代码，
      把脚本写在body标签后面
      //7.如何判断一个变量是属于哪种变量类型（字符串、数值、布尔值、Null、undefined、对象、数组、函数）
      //console.log(Object.prototype.toString.call(arr));
      //console.log(Object.prototype.toString.call(obj));
      //console.log(Object.prototype.toString.call(fn));
      //console.log(Object.prototype.toString.call(str));
      typeof函数
      //8.JS的注释写法有哪几种，有何区别
      "//","/**/","<-->" //越来越简易注释写法,区别：多行注释和单行注释。

      //9.javascript引入页面有几种形式
      //行内导入、内嵌式、外联式

      //10.var 的意义何在
      //var 的意义是声明变量值

      //11.已知数A与B，由键盘输入AB的值，交换它们的值，并输出。
      //提示，获取用户输入信息，可以使用 var user_input = prompt("请输入数字");
      var A = prompt("请输入数字");
      var B = prompt("请输入数字");
      var name = A;
      A = B;
      B = name;
      console.log("A:" + A + ",B:" + B);
    </script>
  </body>
</html>

